package com.hyjx.framework.component.customquery;

import java.util.List;
import java.util.Map;

/**
 * 自定义查询服务接口
 */
public interface CustomQueryService {
    /**
     * 查询信息列表
     *
     * @return
     */
    public String queryList(CustomQueryModel model);
    
    /**
     * 添加信息
     *
     * @param model
     */
    public boolean add(CustomQueryModel model);
    
    /**
     * 根据ID查询信息
     */
    public CustomQueryModel getInfoById(String s);
    
    /**
     * 修改信息
     */
    public int edit(CustomQueryModel model);
    
    /**
     * 删除信息
     *
     * @param id
     */
    public int delete(String ids);
    
    /**
     * 取字段信息
     *
     * @param model
     * @return
     */
    public String getFileds(CustomQueryModel model);
    
    /**
     * 取配置信息列表
     *
     * @param model
     * @return
     */
    public List<ListConfig> getListConfig(CustomQueryModel model);
    
    /**
     * 取页面配置
     *
     * @param model
     * @return
     */
    public PageConfig getPageConfig(CustomQueryModel model);
    
    /**
     * 取配置html
     *
     * @param model
     * @return
     */
    public String getPageHtml(CustomQueryModel model);
    
    /**
     * 取SQL条件
     *
     * @param sqlCondition
     * @return
     */
    public String queryMapJSON(String sqlCondition);
    
    /**
     * 取列信息
     *
     * @param sql
     * @return
     */
    List<Map<String, String>> getColumns(String sql);
    
    /**
     * 取map的列表信息
     *
     * @param sql
     * @return
     */
    public List<Map<String, String>> queryMap(String sql);
    
    /**
     * 执行传递的SQL
     *
     * @param sql
     */
    public void executeSql(String sql);
    
    public void inserttpl(CustomQueryTplModel cqt);
    
    public void edittpl(CustomQueryTplModel cqt);
    
    public String getTplData(CustomQueryTplModel cqt);
    
    public String getTplById(CustomQueryTplModel cqt);
    
    public int delTpl(CustomQueryTplModel cqt);
}
